import request from '@/utils/request'

/**
 * 支付模块API
 */
export default {
  /**
   * 创建支付订单
   * @param {Object} paymentDTO 支付信息
   * @param {Array<number>} paymentDTO.orderIds 订单ID列表
   * @param {string} paymentDTO.paymentType 支付方式：alipay-支付宝，wechat-微信支付
   * @returns {Promise<string>} 支付URL
   */
  createPayment: (paymentDTO) => request.post('/api/v1/payment/create', paymentDTO),

  /**
   * 查询支付状态
   * @param {number} orderId 订单ID
   * @returns {Promise<boolean>} 是否已支付
   */
  queryPaymentStatus: (orderId) => request.get(`/api/v1/payment/status/${orderId}`),

  /**
   * 支付回调处理
   * @param {string} paymentType 支付类型
   * @param {Object} params 回调参数
   * @param {string} params.orderNo 订单编号
   * @param {string} params.paymentNo 支付流水号
   * @param {boolean} params.success 是否成功
   * @returns {Promise<string>} 处理结果
   */
  handlePaymentNotify: (paymentType, params) => 
    request.post(`/api/v1/payment/notify/${paymentType}`, null, { params }),

  /**
   * 余额支付相关接口
   */
  balance: {
    /**
     * 查询余额
     * @returns {Promise<number>} 用户余额
     */
    getBalance: () => request.get('/api/v1/payment/balance/query')
  }
}

